/*************************************************************************
    > File Name    : Condition.h
    > Author       : LiuLei
    > Mail         : 2261459486@qq.com 
    > Created Time : 2022年11月24日 星期四 20时28分52秒
 ************************************************************************/

#ifndef __LL_CONDITION_H__
#define __LL_CONDITION_H__

#include "NonCopyable.h"
#include "MutexLock.h"

class Condition
: public NonCopyable
{
public:
    Condition(MutexLock &mutex);
    ~Condition();

    void wait();
    void notify();
    void notifyAll();

private:
    pthread_cond_t  _cond;
    MutexLock       &_mutex;
};

#endif
